import { Connector } from "cax-connector";
import { API_EVENT, IReq, IRes } from "../interface";
import { v4 as uuidv4 } from "uuid";
import { devtool } from "cax-base";

export function get_all_outputblocks(this: Connector) {
  if (this.client == null) return Promise.reject("socket未初始化");
  const req: IReq = {
    Topic: "api",
    Type: API_EVENT.OUTPUTBLOCKS_ALL,
    Params: {},
    Req: 1,
    Res: 0,
    Tag: uuidv4(),
  };
  this.client.emit("api", req);
  return new Promise((resolve, reject) => {
    this.client?.once(req.Tag, (ev: IRes) => {
      resolve(ev.Result);
    });
  });
}
